encyklopedia.space

.NET Framework

.NET Framework – platforma programistyczna opracowana przez Microsoft, przeznaczona do tworzenia i uruchamiania aplikacji zarówno na komputerach osobistych, jak i w środowiskach serwerowych. Jest to zintegrowane środowisko składające się z biblioteki klas (BCL), środowiska uruchomieniowego (CLR) oraz zestawu narzędzi programistycznych.

Historia

Projekt .NET Framework został zaprezentowany po raz pierwszy w 2000 roku podczas konferencji Microsoft Developer Conference. Pierwsza wersja (1.0) została wydana w 2002 roku i od tego czasu platforma była regularnie rozwijana, osiągając wersję 4.8, która jest ostatnią wersją przeznaczoną wyłącznie dla systemu Windows.

Architektura

Common Language Runtime (CLR)

Podstawą działania .NET Framework jest CLR – środowisko wykonawcze, które zarządza pamięcią, zapewnia bezpieczeństwo, obsługuje kompilację Just‑In‑Time (JIT) oraz umożliwia interoperacyjność między językami programowania.

Biblioteka klas bazowych (BCL)

Biblioteka klas (Base Class Library – BCL) dostarcza zestaw gotowych komponentów, takich jak struktury danych, operacje na plikach, dostęp do baz danych (ADO.NET), komunikacja sieciowa czy interfejsy użytkownika (Windows Forms, WPF).

Języki programowania

Na platformie .NET najczęściej używanymi językami są C#, VB.NET oraz F#. Dzięki CLR możliwe jest również wykorzystanie języków trzecich, pod warunkiem, że kompilują się do pośredniego kodu MSIL (Microsoft Intermediate Language).

Wersje i wydania

  • 1.0 – wprowadzenie podstawowych mechanizmów CLR i BCL.
  • 1.1 – wsparcie dla ASP.NET i dodatkowych bibliotek.
  • 2.0 – wprowadzenie generics, częściowego zaufania i ClickOnce.
  • 3.0 – dodanie Windows Communication Foundation (WCF), Windows Presentation Foundation (WPF) i Windows Workflow Foundation (WF).
  • 3.5 – rozszerzenia LINQ oraz ASP.NET AJAX.
  • 4.0 – dynamiczne języki, Parallel Extensions i usprawnienia CLR.
  • 4.5‑4.8 – dalsze usprawnienia w obszarze asynchroniczności, sieci i wydajności.

Główne komponenty

Komponent Opis
CLR Środowisko wykonawcze zarządzające pamięcią, wątkami i bezpieczeństwem.
BCL Rozbudowana biblioteka klas udostępniająca funkcje podstawowe i zaawansowane.
ASP.NET Platforma do tworzenia aplikacji internetowych i serwisów webowych.
WPF Technologia do budowy graficznych interfejsów użytkownika z wykorzystaniem XAML.
WCF Framework do budowy usług komunikacyjnych (service‑oriented architecture).

Zastosowania

.NET Framework jest wykorzystywany w szerokim spektrum projektów, m.in.:

  • aplikacje desktopowe (Windows Forms, WPF),
  • serwisy i aplikacje webowe (ASP.NET, Web API),
  • rozwiązania biznesowe oparte na SOA,
  • narzędzia administracyjne i skrypty (PowerShell, C# Script).

Przejście na .NET Core i .NET 5/6/7

W 2016 roku Microsoft ogłosił .NET Core – otwartą, wieloplatformową wersję platformy, z myślą o systemach Linux i macOS. Od wersji .NET 5 (2020) po najnowsze .NET 7, Microsoft łączy funkcje .NET Framework i .NET Core w jedną, nowoczesną platformę, pozostawiając .NET Framework jako wersję stabilną wyłącznie dla Windows.

Kontrowersje i krytyka

Choć .NET Framework cieszył się dużą popularnością, spotykał się także z krytyką, m.in.:

  • ograniczenia do systemu Windows,
  • duży rozmiar instalacji i zależności,
  • powolny proces aktualizacji w porównaniu z otwartymi alternatywami.

Patrz także

  • C# – język programowania najczęściej używany w .NET Framework.
  • CLR – środowisko uruchomieniowe .NET.
  • ASP.NET – technologia webowa w ramach .NET.
  • .NET Core – wieloplatformowa kontynuacja .NET.
  • Visual Studio – IDE wykorzystywane do programowania w .NET.

Zewnętrzne zasoby

W encyklopedii nie podajemy odnośników zewnętrznych, ale zachęcamy do dalszego zgłębiania tematu w literaturze technicznej oraz dokumentacji oficjalnej Microsoft.